Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows support + Stability #3

Merged
merged 36 commits into from Dec 3, 2019
Merged

Windows support + Stability #3

merged 36 commits into from Dec 3, 2019

Conversation

aminya
Copy link
Contributor

@aminya aminya commented Nov 30, 2019

Fixes #2, #4, #6, and #5

@aminya aminya changed the title Adding Windows definition for :Sleep Windows support Nov 30, 2019
test/ccalls.jl Outdated Show resolved Hide resolved
test/jlrun.jl Outdated Show resolved Hide resolved
@tshort
Copy link
Owner

tshort commented Nov 30, 2019

Thanks for this! I'm surprised this is all it takes to get something working on Windows.

@aminya
Copy link
Contributor Author

aminya commented Nov 30, 2019

Thanks for this! I'm surprised this is all it takes to get something working on Windows.

You're welcome 😃

Check the #6. I cannot still get it running for the f() test.

test/jlrun.jl Outdated Show resolved Hide resolved
@tshort
Copy link
Owner

tshort commented Dec 1, 2019

For more robust compiling across platforms, PackageCompilerX is a good place to look.

test/jlrun.jl Outdated Show resolved Hide resolved
@aminya
Copy link
Contributor Author

aminya commented Dec 1, 2019

Also, looks like Travis tests are failing on the standalone executables. I'm not sure if they ever passed, though. I'd like to either get that cleaned up or try the tests locally.

On my system I get the error that Int64 is not a key.

It happens because of this:

Cformatmap = Dict(
    Cint => "%d",
    Clong => "%ld",
    Cdouble => "%e",
)

There is no map for Int64 and Cint means Int32

Documentation for all the C types is here: https://docs.julialang.org/en/v1/base/c/#Base.Cchar

@tshort
Copy link
Owner

tshort commented Dec 1, 2019

I couldn't figure out how to edit your branch. See the following for a version that compiles standalone executables on Windows.

https://github.com/tshort/StaticCompiler.jl/blob/aminya-extra/test/standalone-exe.jl

Feel free to add that to your branch and make changes if needed.

@aminya
Copy link
Contributor Author

aminya commented Dec 1, 2019

I couldn't figure out how to edit your branch. See the following for a version that compiles standalone executables on Windows.

Because I am an outsider collaborator, similar to how I don't have direct access to this repository, you don't have access to my fork. That's why I was asking for transferring this repo to Julia-Embedded 😄

I will edit it.

@tshort
Copy link
Owner

tshort commented Dec 2, 2019

Another pain point for Windows is that an exe wants all dll's in the path or in the same folder. I just blindly copied them to the standalone folder.

aminya and others added 2 commits December 1, 2019 18:09
Co-Authored-By: Tom Short <tshort.rlists@gmail.com>
@aminya

This comment has been minimized.

@tshort
Copy link
Owner

tshort commented Dec 2, 2019

@codecov-io
Copy link

codecov-io commented Dec 2, 2019

Codecov Report

❗ No coverage uploaded for pull request base (master@a3c946c). Click here to learn what that means.
The diff coverage is 25%.

Impacted file tree graph

@@           Coverage Diff            @@
##             master      #3   +/-   ##
========================================
  Coverage          ?   92.7%           
========================================
  Files             ?       7           
  Lines             ?     288           
  Branches          ?       0           
========================================
  Hits              ?     267           
  Misses            ?      21           
  Partials          ?       0
Impacted Files Coverage Δ
src/irgen.jl 84.84% <25%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a3c946c...3c7ed69. Read the comment docs.

@aminya
Copy link
Contributor Author

aminya commented Dec 2, 2019

@aminya aminya force-pushed the master branch 2 times, most recently from 2530270 to c7c8c03 Compare December 2, 2019 03:12
@aminya
Copy link
Contributor Author

aminya commented Dec 2, 2019

I couldn't fix #8

@tshort
Copy link
Owner

tshort commented Dec 3, 2019

Tests pass locally for me on Windows and Linux, so I'll probably merge this as is. I'll give it a couple of days to see if I can figure out why Travis fails.

@aminya
Copy link
Contributor Author

aminya commented Dec 3, 2019

That's good!

Yeah, we can do more stuff on other pull requests. For example, we need to move @jlrun from tests to the package itself.

@tshort
Copy link
Owner

tshort commented Dec 3, 2019

Agreed. There's lot's more stuff to do! On @jlrun, right now, that's a pretty kludgy macro. It's not intended to be part of the API. We could use some compiling helpers as part of the API. That could include stuff from test/standalone-exe.jl and PackageCompilerX.

I'm more worried about the core compiling functionality. That needs work to handle more code.

@tshort tshort merged commit 05abce4 into tshort:master Dec 3, 2019
@aminya aminya mentioned this pull request Dec 3, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

could not load symbol "usleep":
3 participants